home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Skunkware 5
/
Skunkware 5.iso
/
src
/
Tools
/
mpeg_stat-2.2
/
proto.h
< prev
next >
Wrap
C/C++ Source or Header
|
1995-05-10
|
5KB
|
168 lines
/* MPEGSTAT - analyzing tool for MPEG-I video streams
*
* Copyright (c) 1995 The Regents of the University of California.
* All rights reserved.
*
* Technical University of Berlin, Germany, Dept. of Computer Science
* Tom Pfeifer - Multimedia systems project - pfeifer@fokus.gmd.de
*
* Jens Brettin, Harald Masche, Alexander Schulze, Dirk Schubert
*
* This program uses parts of the source code of the Berkeley MPEG player
*
* ---------------------------
*
* Copyright (c) 1993 Technical University of Berlin, Germany
*
* for the parts of the Berkeley player used:
*
* Copyright (c) 1992 The Regents of the University of California.
* All rights reserved.
*
* ---------------------------
*
* Permission to use, copy, modify, and distribute this software and its
* documentation for any purpose, without fee, and without written agreement is
* hereby granted, provided that the above copyright notices and the following
* two paragraphs appear in all copies of this software.
*
* IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA
* or the Technical University of Berlin BE LIABLE TO ANY PARTY FOR
* DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
* OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
* CALIFORNIA or the Technical University of Berlin HAS BEEN ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
* THE UNIVERSITY OF CALIFORNIA and the Technical University of Berlin
* SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE
* UNIVERSITY OF CALIFORNIA and the Technical University of Berlin HAVE NO
* OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS,
* OR MODIFICATIONS.
*/
#ifdef __STDC__
# define P(s) s
#else
# define P(s) ()
#endif
/* util.c */
void correct_underflow P((void ));
int next_bits P((int num , unsigned int mask ));
char *get_ext_data P((int *size ));
int next_start_code P((void ));
char *get_extra_bit_info P((void ));
/* video.c */
void init_stats P((void ));
void PrintAllStats P((void ));
double ReadSysClock P((void ));
void PrintTimeInfo P((void ));
VidStream *NewVidStream P((int bufLength ));
void DestroyVidStream P((VidStream *astream ));
PictImage *NewPictImage P((unsigned int width , unsigned int height ));
void DestroyPictImage P((PictImage *apictimage ));
VidStream *mpegVidRsrc P((TimeStamp time_stamp , VidStream *vid_stream ));
/* parseblock.c */
int ParseReconBlock P((int n ));
int ParseAwayBlock P((int n ));
/* motionvector.c */
void ComputeForwVector P((int *recon_right_for_ptr , int *recon_down_for_ptr ));
void ComputeBackVector P((int *recon_right_back_ptr , int *recon_down_back_ptr ));
/* decoders.c */
void init_tables P((void ));
void decodeDCTDCSizeLum P((unsigned int *value ));
void decodeDCTDCSizeChrom P((unsigned int *value ));
int decodeDCTCoeffFirst P((unsigned int *run , int *level ));
int decodeDCTCoeffNext P((unsigned int *run , int *level ));
/* main.c */
#ifndef SIG_ONE_PARAM
void int_handler P((void ));
#else
void int_handler P((int signum ));
#endif
void main P((int argc , char **argv ));
void Usage P((void ));
void DoDitherImage P((unsigned char *l , unsigned char *Cr , unsigned char *Cb , unsigned char *disp , int h , int w ));
/* jrevdct.c */
void init_pre_idct P((void ));
void j_rev_dct_sparse P((DCTBLOCK data , int pos ));
void j_rev_dct P((DCTBLOCK data ));
void j_rev_dct_sparse P((DCTBLOCK data , int pos ));
void j_rev_dct P((DCTBLOCK data ));
/* readfile.c */
int get_more_data P((unsigned int **buf_start , int *max_length , int *length_ptr , unsigned int **buf_ptr ));
void init_read_sys P((void ));
int pure_get_more_data P((unsigned int *buf_start , int max_length , int *length_ptr , unsigned int **buf_ptr, int swap ));
int read_sys P((unsigned int **buf_start , int *max_length , int *length_ptr , unsigned int **buf_ptr, unsigned int start ));
int ReadStartCode P((
unsigned int *startCode));
int ReadPackHeader P((
double *systemClockTime,
unsigned long *muxRate));
int ReadSystemHeader P((void ));
int ReadPacket P((
unsigned char packetID,
unsigned int **buf_start ,
int *max_length ,
int *length_ptr ,
unsigned int **buf_ptr ));
void ReadTimeStamp P((
unsigned char *inputBuffer,
unsigned char *hiBit,
unsigned long *low4Bytes));
void ReadSTD P((
unsigned char *inputBuffer,
unsigned char *stdBufferScale,
unsigned long *stdBufferSize));
void ReadRate P((
unsigned char *inputBuffer,
unsigned long *rate));
int MakeFloatClockTime P((
unsigned char hiBit,
unsigned long low4Bytes,
double *floatClockTime));
/* Statistics routines in filter.c */
void init_block_struct P((BlockVals *a));
void init_stats P((void));
void PrintAllStats P((void));
void PrintSummaryStat P((int typ));
void CollectStats P((void));
unsigned int bitCountRead P((void));
void StartTime P((void));
void EndTime P((void));
double ReadSysClock P((void));
void PrintTimeInfo P((void));
void PrintQT P((FILE *stream,char *title,int changed,unsigned char *ptr));
void print_binary P(( FILE *fp, char *buf, int size));
#undef P